package com.wl2o2o.writtenview.jd;

import java.util.Scanner;

/**
 * @Author <a href="https://github.com/wl2o2o">程序员CSGUIDER</a>
 * @From <a href="https://wl2o2o.github.io">CSGUIDER博客</a>
 * @CreateTime 2024/3/16
 */

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int t = scanner.nextInt();

        while (t-- > 0) {
            int l = scanner.nextInt();
            int r = scanner.nextInt();
            int res = 0;
            int n = r - l - 1;
            // 奇数个
            if ((r - l) % 2 == 0) {
                // 正数开头
                if (l % 2 == 1) {
                    res = r - n;
                } else
                    res = n - r;
            } else {
                // 正数开头
                if (l % 2 == 1) {
                    res = -n;
                } else
                    res = n;
            }
            System.out.println(res);
            // 第一种情况：奇数、正数开头  组数n：r - l - 1 组合num：-1 余数last：r；  res = n * num - r * num
            // 第二种情况：奇数、负数开头  组数n：r - l - 1 组合num：1 余数last： r；  res = n * num - r * num
            // 第三种情况：偶数、正数开头  组数n：r - l - 1 组合num：-1 ；  n * num
            // 第四种情况：偶数、负数开头  组数n：r - l - 1 组合num：1 ；  n * num

        }
    }
}
